| 
                
               | 
              
                
               | 
              
                @@ -21,6 +21,7 @@ from account.models import UserInfo 
               | 
            
            
            
              | 
                21
               | 
              
                21
               | 
              
                 from api.encrypt_views import get_ciphertext 
               | 
            
            
            
              | 
                22
               | 
              
                22
               | 
              
                 from coupon.models import CouponInfo, UserCouponInfo 
               | 
            
            
            
              | 
                23
               | 
              
                23
               | 
              
                 from integral.models import SaleclerkSubmitLogInfo 
               | 
            
            
            
              | 
                
               | 
              
                24
               | 
              
                +from kodo.decorators import check_admin 
               | 
            
            
            
              | 
                24
               | 
              
                25
               | 
              
                 from logs.models import AdministratorLoginLogInfo, ComplementCodeLogInfo, MchInfoEncryptLogInfo 
               | 
            
            
            
              | 
                25
               | 
              
                26
               | 
              
                 from mch.models import AdministratorInfo, BrandInfo, ConsumeInfoSubmitLogInfo, DistributorInfo, ModelInfo 
               | 
            
            
            
              | 
                26
               | 
              
                27
               | 
              
                 from member.models import (GoodsInfo, GoodsOrderInfo, MemberActivityContributionInfo, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -37,22 +38,18 @@ WECHAT = settings.WECHAT 
               | 
            
            
            
              | 
                37
               | 
              
                38
               | 
              
                  
               | 
            
            
            
              | 
                38
               | 
              
                39
               | 
              
                  
               | 
            
            
            
              | 
                39
               | 
              
                40
               | 
              
                 @logit 
               | 
            
            
            
              | 
                40
               | 
              
                
               | 
              
                -def querysn(request): 
               | 
            
            
            
              | 
                41
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                42
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                41
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                42
               | 
              
                +def querysn(request, administrator): 
               | 
            
            
            
              | 
                43
               | 
              
                43
               | 
              
                     model_id = request.POST.get('model_id', '')
               | 
            
            
            
              | 
                44
               | 
              
                44
               | 
              
                     sn = request.POST.get('sn', '')
               | 
            
            
            
              | 
                45
               | 
              
                45
               | 
              
                  
               | 
            
            
            
              | 
                46
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                47
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                48
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                49
               | 
              
                
               | 
              
                -    if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists(): 
               | 
            
            
            
              | 
                
               | 
              
                46
               | 
              
                +    if administrator.admin_type != AdministratorInfo.MAINTENANCE: 
               | 
            
            
            
              | 
                50
               | 
              
                47
               | 
              
                         return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND) 
               | 
            
            
            
              | 
                51
               | 
              
                48
               | 
              
                  
               | 
            
            
            
              | 
                52
               | 
              
                
               | 
              
                -    log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True, status=True).order_by('has_used', '-pk').first()
               | 
            
            
            
              | 
                
               | 
              
                49
               | 
              
                +    log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=administrator.brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True, status=True).order_by('has_used', '-pk').first()
               | 
            
            
            
              | 
                53
               | 
              
                50
               | 
              
                  
               | 
            
            
            
              | 
                54
               | 
              
                51
               | 
              
                     if not log: 
               | 
            
            
            
              | 
                55
               | 
              
                
               | 
              
                -        log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, status=True).order_by('-submit_during_activity', 'dupload').first()
               | 
            
            
            
              | 
                
               | 
              
                52
               | 
              
                +        log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=administrator.brand_id, model_id=model_id, serialNo=sn, status=True).order_by('-submit_during_activity', 'dupload').first()
               | 
            
            
            
              | 
                56
               | 
              
                53
               | 
              
                  
               | 
            
            
            
              | 
                57
               | 
              
                54
               | 
              
                     if not log: 
               | 
            
            
            
              | 
                58
               | 
              
                55
               | 
              
                         return response(ProductMachineStatusCode.SN_NOT_FOUND) 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -61,17 +58,12 @@ def querysn(request): 
               | 
            
            
            
              | 
                61
               | 
              
                58
               | 
              
                  
               | 
            
            
            
              | 
                62
               | 
              
                59
               | 
              
                  
               | 
            
            
            
              | 
                63
               | 
              
                60
               | 
              
                 @logit 
               | 
            
            
            
              | 
                64
               | 
              
                
               | 
              
                -def queryusedsn(request): 
               | 
            
            
            
              | 
                65
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                66
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                67
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                68
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                69
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                70
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                71
               | 
              
                
               | 
              
                -    if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists(): 
               | 
            
            
            
              | 
                
               | 
              
                61
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                62
               | 
              
                +def queryusedsn(request, administrator): 
               | 
            
            
            
              | 
                
               | 
              
                63
               | 
              
                +    if administrator.admin_type != AdministratorInfo.MAINTENANCE: 
               | 
            
            
            
              | 
                72
               | 
              
                64
               | 
              
                         return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND) 
               | 
            
            
            
              | 
                73
               | 
              
                65
               | 
              
                  
               | 
            
            
            
              | 
                74
               | 
              
                
               | 
              
                -    logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, admin_id=admin_id, has_used=True, status=True).order_by('-used_at')
               | 
            
            
            
              | 
                
               | 
              
                66
               | 
              
                +    logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=administrator.brand_id, admin_id=administrator.admin_id, has_used=True, status=True).order_by('-used_at')
               | 
            
            
            
              | 
                75
               | 
              
                67
               | 
              
                     logs = [log.data for log in logs] 
               | 
            
            
            
              | 
                76
               | 
              
                68
               | 
              
                  
               | 
            
            
            
              | 
                77
               | 
              
                69
               | 
              
                     return response(200, 'Query Used SN Success', u'查询核销序列号成功', data={
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -80,26 +72,17 @@ def queryusedsn(request): 
               | 
            
            
            
              | 
                80
               | 
              
                72
               | 
              
                  
               | 
            
            
            
              | 
                81
               | 
              
                73
               | 
              
                  
               | 
            
            
            
              | 
                82
               | 
              
                74
               | 
              
                 @logit 
               | 
            
            
            
              | 
                
               | 
              
                75
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                83
               | 
              
                76
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                84
               | 
              
                
               | 
              
                -def usecoupon(request): 
               | 
            
            
            
              | 
                85
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                86
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                77
               | 
              
                +def usecoupon(request, administrator): 
               | 
            
            
            
              | 
                87
               | 
              
                78
               | 
              
                     model_id = request.POST.get('model_id', '')
               | 
            
            
            
              | 
                88
               | 
              
                79
               | 
              
                     sn = request.POST.get('sn', '')
               | 
            
            
            
              | 
                89
               | 
              
                80
               | 
              
                  
               | 
            
            
            
              | 
                90
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                91
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                92
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                93
               | 
              
                
               | 
              
                -    if not AdministratorInfo.objects.filter( 
               | 
            
            
            
              | 
                94
               | 
              
                
               | 
              
                -        admin_id=admin_id, 
               | 
            
            
            
              | 
                95
               | 
              
                
               | 
              
                -        admin_type=AdministratorInfo.MAINTENANCE, 
               | 
            
            
            
              | 
                96
               | 
              
                
               | 
              
                -        user_status=AdministratorInfo.ACTIVATED, 
               | 
            
            
            
              | 
                97
               | 
              
                
               | 
              
                -        status=True 
               | 
            
            
            
              | 
                98
               | 
              
                
               | 
              
                -    ).exists(): 
               | 
            
            
            
              | 
                
               | 
              
                81
               | 
              
                +    if administrator.admin_type != AdministratorInfo.MAINTENANCE: 
               | 
            
            
            
              | 
                99
               | 
              
                82
               | 
              
                         return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND) 
               | 
            
            
            
              | 
                100
               | 
              
                83
               | 
              
                  
               | 
            
            
            
              | 
                101
               | 
              
                84
               | 
              
                     log = ConsumeInfoSubmitLogInfo.objects.filter( 
               | 
            
            
            
              | 
                102
               | 
              
                
               | 
              
                -        brand_id=brand_id, 
               | 
            
            
            
              | 
                
               | 
              
                85
               | 
              
                +        brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                103
               | 
              
                86
               | 
              
                         model_id=model_id, 
               | 
            
            
            
              | 
                104
               | 
              
                87
               | 
              
                         serialNo=sn, 
               | 
            
            
            
              | 
                105
               | 
              
                88
               | 
              
                         submit_during_activity=True, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -121,20 +104,11 @@ def usecoupon(request): 
               | 
            
            
            
              | 
                121
               | 
              
                104
               | 
              
                  
               | 
            
            
            
              | 
                122
               | 
              
                105
               | 
              
                  
               | 
            
            
            
              | 
                123
               | 
              
                106
               | 
              
                 @logit 
               | 
            
            
            
              | 
                124
               | 
              
                
               | 
              
                -def userinfo(request): 
               | 
            
            
            
              | 
                125
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                126
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                107
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                108
               | 
              
                +def userinfo(request, administrator): 
               | 
            
            
            
              | 
                127
               | 
              
                109
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                128
               | 
              
                110
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                129
               | 
              
                111
               | 
              
                  
               | 
            
            
            
              | 
                130
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                131
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                132
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                133
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                134
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                135
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                136
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                137
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                138
               | 
              
                112
               | 
              
                     userinfos = UserInfo.objects.filter(status=True).order_by('-pk')
               | 
            
            
            
              | 
                139
               | 
              
                113
               | 
              
                     count = userinfos.count() 
               | 
            
            
            
              | 
                140
               | 
              
                114
               | 
              
                     userinfos, left = pagination(userinfos, page, num) 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -148,25 +122,16 @@ def userinfo(request): 
               | 
            
            
            
              | 
                148
               | 
              
                122
               | 
              
                  
               | 
            
            
            
              | 
                149
               | 
              
                123
               | 
              
                  
               | 
            
            
            
              | 
                150
               | 
              
                124
               | 
              
                 @logit 
               | 
            
            
            
              | 
                151
               | 
              
                
               | 
              
                -def query_usercoupons(request): 
               | 
            
            
            
              | 
                152
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                153
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                125
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                126
               | 
              
                +def query_usercoupons(request, administrator): 
               | 
            
            
            
              | 
                154
               | 
              
                127
               | 
              
                     user_id = request.POST.get('user_id', '')
               | 
            
            
            
              | 
                155
               | 
              
                128
               | 
              
                  
               | 
            
            
            
              | 
                156
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                157
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                158
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                159
               | 
              
                129
               | 
              
                     # 校验用户是否存在 
               | 
            
            
            
              | 
                160
               | 
              
                130
               | 
              
                     try: 
               | 
            
            
            
              | 
                161
               | 
              
                131
               | 
              
                         user = UserInfo.objects.get(user_id=user_id) 
               | 
            
            
            
              | 
                162
               | 
              
                132
               | 
              
                     except UserInfo.DoesNotExist: 
               | 
            
            
            
              | 
                163
               | 
              
                133
               | 
              
                         return response(UserStatusCode.USER_NOT_FOUND) 
               | 
            
            
            
              | 
                164
               | 
              
                134
               | 
              
                  
               | 
            
            
            
              | 
                165
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                166
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                167
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                168
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                169
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                170
               | 
              
                135
               | 
              
                     coupons = UserCouponInfo.objects.filter(brand_id=administrator.brand_id, user_id=user_id, status=True).order_by('-pk')
               | 
            
            
            
              | 
                171
               | 
              
                136
               | 
              
                     coupons = [coupon.admindata for coupon in coupons] 
               | 
            
            
            
              | 
                172
               | 
              
                137
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -176,26 +141,17 @@ def query_usercoupons(request): 
               | 
            
            
            
              | 
                176
               | 
              
                141
               | 
              
                  
               | 
            
            
            
              | 
                177
               | 
              
                142
               | 
              
                  
               | 
            
            
            
              | 
                178
               | 
              
                143
               | 
              
                 @logit 
               | 
            
            
            
              | 
                179
               | 
              
                
               | 
              
                -def query_usergoods(request): 
               | 
            
            
            
              | 
                180
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                181
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                144
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                145
               | 
              
                +def query_usergoods(request, administrator): 
               | 
            
            
            
              | 
                182
               | 
              
                146
               | 
              
                     user_id = request.POST.get('user_id', '')
               | 
            
            
            
              | 
                183
               | 
              
                147
               | 
              
                     dupload = request.POST.get('dupload', '')
               | 
            
            
            
              | 
                184
               | 
              
                148
               | 
              
                  
               | 
            
            
            
              | 
                185
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                186
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                187
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                188
               | 
              
                149
               | 
              
                     # 校验用户是否存在 
               | 
            
            
            
              | 
                189
               | 
              
                150
               | 
              
                     try: 
               | 
            
            
            
              | 
                190
               | 
              
                151
               | 
              
                         user = UserInfo.objects.get(user_id=user_id) 
               | 
            
            
            
              | 
                191
               | 
              
                152
               | 
              
                     except UserInfo.DoesNotExist: 
               | 
            
            
            
              | 
                192
               | 
              
                153
               | 
              
                         return response(UserStatusCode.USER_NOT_FOUND) 
               | 
            
            
            
              | 
                193
               | 
              
                154
               | 
              
                  
               | 
            
            
            
              | 
                194
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                195
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                196
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                197
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                198
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                199
               | 
              
                155
               | 
              
                     logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=administrator.brand_id, user_id=user_id, status=True).order_by('-pk')
               | 
            
            
            
              | 
                200
               | 
              
                156
               | 
              
                  
               | 
            
            
            
              | 
                201
               | 
              
                157
               | 
              
                     if dupload: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -209,9 +165,8 @@ def query_usergoods(request): 
               | 
            
            
            
              | 
                209
               | 
              
                165
               | 
              
                  
               | 
            
            
            
              | 
                210
               | 
              
                166
               | 
              
                  
               | 
            
            
            
              | 
                211
               | 
              
                167
               | 
              
                 @logit 
               | 
            
            
            
              | 
                212
               | 
              
                
               | 
              
                -def query_userinfo(request): 
               | 
            
            
            
              | 
                213
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                214
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                168
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                169
               | 
              
                +def query_userinfo(request, administrator): 
               | 
            
            
            
              | 
                215
               | 
              
                170
               | 
              
                     query = request.POST.get('query', '')
               | 
            
            
            
              | 
                216
               | 
              
                171
               | 
              
                     level = request.POST.get('level', '')
               | 
            
            
            
              | 
                217
               | 
              
                172
               | 
              
                     is_member = request.POST.get('is_member', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -225,14 +180,6 @@ def query_userinfo(request): 
               | 
            
            
            
              | 
                225
               | 
              
                180
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                226
               | 
              
                181
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                227
               | 
              
                182
               | 
              
                  
               | 
            
            
            
              | 
                228
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                229
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                230
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                231
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                232
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                233
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                234
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                235
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                236
               | 
              
                183
               | 
              
                     userinfos = UserInfo.objects.filter(Q(status=True) & (Q(user_id__icontains=query) | Q(nickname__icontains=query) | Q(phone__icontains=query) | Q(memberusercardcode__icontains=query))).order_by('-pk')
               | 
            
            
            
              | 
                237
               | 
              
                184
               | 
              
                  
               | 
            
            
            
              | 
                238
               | 
              
                185
               | 
              
                     if level: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -273,21 +220,12 @@ def query_userinfo(request): 
               | 
            
            
            
              | 
                273
               | 
              
                220
               | 
              
                  
               | 
            
            
            
              | 
                274
               | 
              
                221
               | 
              
                  
               | 
            
            
            
              | 
                275
               | 
              
                222
               | 
              
                 @logit 
               | 
            
            
            
              | 
                
               | 
              
                223
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                276
               | 
              
                224
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                277
               | 
              
                
               | 
              
                -def userinfo_update(request): 
               | 
            
            
            
              | 
                278
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                279
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                225
               | 
              
                +def userinfo_update(request, administrator): 
               | 
            
            
            
              | 
                280
               | 
              
                226
               | 
              
                     user_id = request.POST.get('user_id', '')
               | 
            
            
            
              | 
                281
               | 
              
                227
               | 
              
                     integral = int(request.POST.get('integral', 0))
               | 
            
            
            
              | 
                282
               | 
              
                228
               | 
              
                  
               | 
            
            
            
              | 
                283
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                284
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                285
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                286
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                287
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                288
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                289
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                290
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                291
               | 
              
                229
               | 
              
                     # 校验用户是否存在 
               | 
            
            
            
              | 
                292
               | 
              
                230
               | 
              
                     try: 
               | 
            
            
            
              | 
                293
               | 
              
                231
               | 
              
                         user = UserInfo.objects.select_for_update().get(user_id=user_id, status=True) 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -295,28 +233,18 @@ def userinfo_update(request): 
               | 
            
            
            
              | 
                295
               | 
              
                233
               | 
              
                         return response(UserStatusCode.USER_NOT_FOUND) 
               | 
            
            
            
              | 
                296
               | 
              
                234
               | 
              
                  
               | 
            
            
            
              | 
                297
               | 
              
                235
               | 
              
                     user.integral = integral 
               | 
            
            
            
              | 
                298
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                299
               | 
              
                236
               | 
              
                     user.save() 
               | 
            
            
            
              | 
                300
               | 
              
                237
               | 
              
                  
               | 
            
            
            
              | 
                301
               | 
              
                238
               | 
              
                     return response(200, 'Userinfo Update Success', u'修改用户信息成功', data={})
               | 
            
            
            
              | 
                302
               | 
              
                239
               | 
              
                  
               | 
            
            
            
              | 
                303
               | 
              
                240
               | 
              
                  
               | 
            
            
            
              | 
                304
               | 
              
                241
               | 
              
                 # 统计 
               | 
            
            
            
              | 
                305
               | 
              
                
               | 
              
                -def statistic_userprofile(request): 
               | 
            
            
            
              | 
                306
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                307
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                242
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                243
               | 
              
                +def statistic_userprofile(request, administrator): 
               | 
            
            
            
              | 
                308
               | 
              
                244
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                309
               | 
              
                245
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                310
               | 
              
                246
               | 
              
                     model_name = request.POST.get('model_name', '')
               | 
            
            
            
              | 
                311
               | 
              
                247
               | 
              
                  
               | 
            
            
            
              | 
                312
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                313
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                314
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                315
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                316
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                317
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                318
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                319
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                320
               | 
              
                248
               | 
              
                     if model_name: 
               | 
            
            
            
              | 
                321
               | 
              
                249
               | 
              
                         logs = ConsumeModelSaleStatisticInfo.objects.filter(model_name=model_name, ymd__gte=start_time, ymd__lte=end_time) 
               | 
            
            
            
              | 
                322
               | 
              
                250
               | 
              
                     else: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -346,20 +274,11 @@ def statistic_userprofile(request): 
               | 
            
            
            
              | 
                346
               | 
              
                274
               | 
              
                     }) 
               | 
            
            
            
              | 
                347
               | 
              
                275
               | 
              
                  
               | 
            
            
            
              | 
                348
               | 
              
                276
               | 
              
                  
               | 
            
            
            
              | 
                349
               | 
              
                
               | 
              
                -def statistic_daily(request): 
               | 
            
            
            
              | 
                350
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                351
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                277
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                278
               | 
              
                +def statistic_daily(request, administrator): 
               | 
            
            
            
              | 
                352
               | 
              
                279
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                353
               | 
              
                280
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                354
               | 
              
                281
               | 
              
                  
               | 
            
            
            
              | 
                355
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                356
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                357
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                358
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                359
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                360
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                361
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                362
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                363
               | 
              
                282
               | 
              
                     sale_logs = ConsumeSaleStatisticInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time) 
               | 
            
            
            
              | 
                364
               | 
              
                283
               | 
              
                     user_logs = ConsumeUserStatisticInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time) 
               | 
            
            
            
              | 
                365
               | 
              
                284
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -372,44 +291,29 @@ def statistic_daily(request): 
               | 
            
            
            
              | 
                372
               | 
              
                291
               | 
              
                     }) 
               | 
            
            
            
              | 
                373
               | 
              
                292
               | 
              
                  
               | 
            
            
            
              | 
                374
               | 
              
                293
               | 
              
                  
               | 
            
            
            
              | 
                375
               | 
              
                
               | 
              
                -def statistic_model(request): 
               | 
            
            
            
              | 
                
               | 
              
                294
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                295
               | 
              
                +def statistic_model(request, administrator): 
               | 
            
            
            
              | 
                376
               | 
              
                296
               | 
              
                     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                377
               | 
              
                297
               | 
              
                     admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                378
               | 
              
                298
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                379
               | 
              
                299
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                380
               | 
              
                300
               | 
              
                  
               | 
            
            
            
              | 
                381
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                382
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                383
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                384
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                385
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                386
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                387
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                388
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                389
               | 
              
                301
               | 
              
                     logs = ConsumeModelSaleStatisticInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time).values_list('model_name').annotate(Sum('num'))
               | 
            
            
            
              | 
                390
               | 
              
                302
               | 
              
                  
               | 
            
            
            
              | 
                391
               | 
              
                303
               | 
              
                     logs = [{'model_name': log[0], 'num': log[1]} for log in logs]
               | 
            
            
            
              | 
                
               | 
              
                304
               | 
              
                + 
               | 
            
            
            
              | 
                392
               | 
              
                305
               | 
              
                     return response(200, 'Get Model Statistic Success', u'获取型号统计成功', data={
               | 
            
            
            
              | 
                393
               | 
              
                306
               | 
              
                         'logs': logs 
               | 
            
            
            
              | 
                394
               | 
              
                307
               | 
              
                     }) 
               | 
            
            
            
              | 
                395
               | 
              
                308
               | 
              
                  
               | 
            
            
            
              | 
                396
               | 
              
                309
               | 
              
                  
               | 
            
            
            
              | 
                397
               | 
              
                
               | 
              
                -def statistic_distributor(request): 
               | 
            
            
            
              | 
                398
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                399
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                310
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                311
               | 
              
                +def statistic_distributor(request, administrator): 
               | 
            
            
            
              | 
                400
               | 
              
                312
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                401
               | 
              
                313
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                402
               | 
              
                314
               | 
              
                     model_name = request.POST.get('model_name', '')
               | 
            
            
            
              | 
                403
               | 
              
                315
               | 
              
                     distributor_name = request.POST.get('distributor_name', '')
               | 
            
            
            
              | 
                404
               | 
              
                316
               | 
              
                  
               | 
            
            
            
              | 
                405
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                406
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                407
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                408
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                409
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                410
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                411
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                412
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                413
               | 
              
                317
               | 
              
                     daily_sql = 'select id, Count(*) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2, Count((code_version=1 AND has_scan=True) or NULL) AS has_code1_scan_num, Count((code_version=2 AND has_scan=True) or NULL) AS has_code2_scan_num FROM integral_saleclerksubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND test_sn=False AND status=True %s %s GROUP BY ymd;' % (start_time, end_time, ('AND model_uni_name="%s"' % (model_name)) if model_name else '', ('AND distributor_name="%s"' % (distributor_name)) if distributor_name else '')
               | 
            
            
            
              | 
                414
               | 
              
                318
               | 
              
                     daily_logs = SaleclerkSubmitLogInfo.objects.raw(daily_sql) 
               | 
            
            
            
              | 
                415
               | 
              
                319
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -436,20 +340,11 @@ def statistic_distributor(request): 
               | 
            
            
            
              | 
                436
               | 
              
                340
               | 
              
                     }) 
               | 
            
            
            
              | 
                437
               | 
              
                341
               | 
              
                  
               | 
            
            
            
              | 
                438
               | 
              
                342
               | 
              
                  
               | 
            
            
            
              | 
                439
               | 
              
                
               | 
              
                -def dashboard(request): 
               | 
            
            
            
              | 
                440
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                441
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                343
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                344
               | 
              
                +def dashboard(request, administrator): 
               | 
            
            
            
              | 
                442
               | 
              
                345
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                443
               | 
              
                346
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                444
               | 
              
                347
               | 
              
                  
               | 
            
            
            
              | 
                445
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                446
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                447
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                448
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                449
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                450
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                451
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                452
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                453
               | 
              
                348
               | 
              
                     # 销售员统计 
               | 
            
            
            
              | 
                454
               | 
              
                349
               | 
              
                     sale_logs = SaleclerkSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, test_user=False, dupload=False, test_sn=False, status=True) 
               | 
            
            
            
              | 
                455
               | 
              
                350
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -484,21 +379,12 @@ def dashboard(request): 
               | 
            
            
            
              | 
                484
               | 
              
                379
               | 
              
                     }) 
               | 
            
            
            
              | 
                485
               | 
              
                380
               | 
              
                  
               | 
            
            
            
              | 
                486
               | 
              
                381
               | 
              
                  
               | 
            
            
            
              | 
                487
               | 
              
                
               | 
              
                -def statistic_consumer(request): 
               | 
            
            
            
              | 
                488
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                489
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                382
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                383
               | 
              
                +def statistic_consumer(request, administrator): 
               | 
            
            
            
              | 
                490
               | 
              
                384
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                491
               | 
              
                385
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                492
               | 
              
                386
               | 
              
                     model_name = request.POST.get('model_name', '')
               | 
            
            
            
              | 
                493
               | 
              
                387
               | 
              
                  
               | 
            
            
            
              | 
                494
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                495
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                496
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                497
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                498
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                499
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                500
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                501
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                502
               | 
              
                388
               | 
              
                     # 消费者统计 
               | 
            
            
            
              | 
                503
               | 
              
                389
               | 
              
                     daily_sql = 'select id, Count(id) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2 FROM mch_consumeinfosubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND status=True %s GROUP BY ymd;' % (start_time, end_time, ('AND model_uni_name="%s"' % (model_name)) if model_name else '')
               | 
            
            
            
              | 
                504
               | 
              
                390
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -524,20 +410,11 @@ def statistic_consumer(request): 
               | 
            
            
            
              | 
                524
               | 
              
                410
               | 
              
                     }) 
               | 
            
            
            
              | 
                525
               | 
              
                411
               | 
              
                  
               | 
            
            
            
              | 
                526
               | 
              
                412
               | 
              
                  
               | 
            
            
            
              | 
                527
               | 
              
                
               | 
              
                -def statistic_member(request): 
               | 
            
            
            
              | 
                528
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                529
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                413
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                414
               | 
              
                +def statistic_member(request, administrator): 
               | 
            
            
            
              | 
                530
               | 
              
                415
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                531
               | 
              
                416
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                532
               | 
              
                417
               | 
              
                  
               | 
            
            
            
              | 
                533
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                534
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                535
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                536
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                537
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                538
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                539
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                540
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                541
               | 
              
                418
               | 
              
                     # 消费者统计 
               | 
            
            
            
              | 
                542
               | 
              
                419
               | 
              
                     if start_time and end_time: 
               | 
            
            
            
              | 
                543
               | 
              
                420
               | 
              
                         start_time = datetime.strptime(start_time, '%Y%m%d') 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -578,9 +455,8 @@ def statistic_member(request): 
               | 
            
            
            
              | 
                578
               | 
              
                455
               | 
              
                     }) 
               | 
            
            
            
              | 
                579
               | 
              
                456
               | 
              
                  
               | 
            
            
            
              | 
                580
               | 
              
                457
               | 
              
                  
               | 
            
            
            
              | 
                581
               | 
              
                
               | 
              
                -def statistic_coupon(request): 
               | 
            
            
            
              | 
                582
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                583
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                458
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                459
               | 
              
                +def statistic_coupon(request, administrator): 
               | 
            
            
            
              | 
                584
               | 
              
                460
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                585
               | 
              
                461
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                586
               | 
              
                462
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -608,24 +484,15 @@ def statistic_coupon(request): 
               | 
            
            
            
              | 
                608
               | 
              
                484
               | 
              
                     }) 
               | 
            
            
            
              | 
                609
               | 
              
                485
               | 
              
                  
               | 
            
            
            
              | 
                610
               | 
              
                486
               | 
              
                  
               | 
            
            
            
              | 
                611
               | 
              
                
               | 
              
                -def record_consumer(request): 
               | 
            
            
            
              | 
                612
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                613
               | 
              
                
               | 
              
                -    page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                614
               | 
              
                
               | 
              
                -    num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                615
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                487
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                488
               | 
              
                +def record_consumer(request, administrator): 
               | 
            
            
            
              | 
                616
               | 
              
                489
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                617
               | 
              
                490
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                618
               | 
              
                491
               | 
              
                     query = request.POST.get('query', '')
               | 
            
            
            
              | 
                619
               | 
              
                492
               | 
              
                     dupload = request.POST.get('dupload', '')
               | 
            
            
            
              | 
                620
               | 
              
                493
               | 
              
                     code_version = request.POST.get('code_version', 0)
               | 
            
            
            
              | 
                621
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                622
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                623
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                624
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                625
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                626
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                627
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                628
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                
               | 
              
                494
               | 
              
                +    page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                
               | 
              
                495
               | 
              
                +    num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                629
               | 
              
                496
               | 
              
                  
               | 
            
            
            
              | 
                630
               | 
              
                497
               | 
              
                     logs = ConsumeInfoSubmitLogInfo.objects.filter(Q(status=True) & Q(test_user=False) & (Q(model_name__icontains=query) | Q(phone__icontains=query) | Q(serialNo__icontains=query))).order_by('-pk')
               | 
            
            
            
              | 
                631
               | 
              
                498
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -649,9 +516,8 @@ def record_consumer(request): 
               | 
            
            
            
              | 
                649
               | 
              
                516
               | 
              
                     }) 
               | 
            
            
            
              | 
                650
               | 
              
                517
               | 
              
                  
               | 
            
            
            
              | 
                651
               | 
              
                518
               | 
              
                  
               | 
            
            
            
              | 
                652
               | 
              
                
               | 
              
                -def record_consumer_batch(request): 
               | 
            
            
            
              | 
                653
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                654
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                519
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                520
               | 
              
                +def record_consumer_batch(request, administrator): 
               | 
            
            
            
              | 
                655
               | 
              
                521
               | 
              
                     logs = json.loads(request.POST.get('logs', '[]'))
               | 
            
            
            
              | 
                656
               | 
              
                522
               | 
              
                  
               | 
            
            
            
              | 
                657
               | 
              
                523
               | 
              
                     infos = [] 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -669,9 +535,8 @@ def record_consumer_batch(request): 
               | 
            
            
            
              | 
                669
               | 
              
                535
               | 
              
                     }) 
               | 
            
            
            
              | 
                670
               | 
              
                536
               | 
              
                  
               | 
            
            
            
              | 
                671
               | 
              
                537
               | 
              
                  
               | 
            
            
            
              | 
                672
               | 
              
                
               | 
              
                -def record_sale(request): 
               | 
            
            
            
              | 
                673
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                674
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                538
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                539
               | 
              
                +def record_sale(request, administrator): 
               | 
            
            
            
              | 
                675
               | 
              
                540
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                676
               | 
              
                541
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                677
               | 
              
                542
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -682,14 +547,6 @@ def record_sale(request): 
               | 
            
            
            
              | 
                682
               | 
              
                547
               | 
              
                     code_version = request.POST.get('code_version', 0)
               | 
            
            
            
              | 
                683
               | 
              
                548
               | 
              
                     is_online_sale = request.POST.get('is_online_sale', '')
               | 
            
            
            
              | 
                684
               | 
              
                549
               | 
              
                  
               | 
            
            
            
              | 
                685
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                686
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                687
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                688
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                689
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                690
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                691
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                692
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                693
               | 
              
                550
               | 
              
                     logs = SaleclerkSubmitLogInfo.objects.filter(Q(status=True) & Q(test_user=False) & Q(test_sn=False) & (Q(model_name__icontains=query) | Q(clerk_name__icontains=query) | Q(distributor_name__icontains=query) | Q(code__icontains=query))).order_by('-created_at')
               | 
            
            
            
              | 
                694
               | 
              
                551
               | 
              
                  
               | 
            
            
            
              | 
                695
               | 
              
                552
               | 
              
                     if dupload: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -718,9 +575,8 @@ def record_sale(request): 
               | 
            
            
            
              | 
                718
               | 
              
                575
               | 
              
                     }) 
               | 
            
            
            
              | 
                719
               | 
              
                576
               | 
              
                  
               | 
            
            
            
              | 
                720
               | 
              
                577
               | 
              
                  
               | 
            
            
            
              | 
                721
               | 
              
                
               | 
              
                -def record_sale_batch(request): 
               | 
            
            
            
              | 
                722
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                723
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                578
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                579
               | 
              
                +def record_sale_batch(request, administrator): 
               | 
            
            
            
              | 
                724
               | 
              
                580
               | 
              
                     logs = json.loads(request.POST.get('logs', '[]'))
               | 
            
            
            
              | 
                725
               | 
              
                581
               | 
              
                  
               | 
            
            
            
              | 
                726
               | 
              
                582
               | 
              
                     infos = [] 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -738,18 +594,8 @@ def record_sale_batch(request): 
               | 
            
            
            
              | 
                738
               | 
              
                594
               | 
              
                     }) 
               | 
            
            
            
              | 
                739
               | 
              
                595
               | 
              
                  
               | 
            
            
            
              | 
                740
               | 
              
                596
               | 
              
                  
               | 
            
            
            
              | 
                741
               | 
              
                
               | 
              
                -def model_list(request): 
               | 
            
            
            
              | 
                742
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                743
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                744
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                745
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                746
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                747
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                748
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                749
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                750
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                751
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                752
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                
               | 
              
                597
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                598
               | 
              
                +def model_list(request, administrator): 
               | 
            
            
            
              | 
                753
               | 
              
                599
               | 
              
                     infos = list(ModelInfo.objects.filter(status=True).values_list('model_uni_name', flat=True).distinct().order_by('model_uni_name'))
               | 
            
            
            
              | 
                754
               | 
              
                600
               | 
              
                  
               | 
            
            
            
              | 
                755
               | 
              
                601
               | 
              
                     return response(200, 'Get Model List Success', u'获取型号列表成功', data={
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -757,18 +603,8 @@ def model_list(request): 
               | 
            
            
            
              | 
                757
               | 
              
                603
               | 
              
                     }) 
               | 
            
            
            
              | 
                758
               | 
              
                604
               | 
              
                  
               | 
            
            
            
              | 
                759
               | 
              
                605
               | 
              
                  
               | 
            
            
            
              | 
                760
               | 
              
                
               | 
              
                -def distributor_list(request): 
               | 
            
            
            
              | 
                761
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                762
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                763
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                764
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                765
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                766
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                767
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                768
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                769
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                770
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                771
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                
               | 
              
                606
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                607
               | 
              
                +def distributor_list(request, administrator): 
               | 
            
            
            
              | 
                772
               | 
              
                608
               | 
              
                     infos = list(DistributorInfo.objects.filter(status=True).values_list('distributor_name', flat=True).distinct().order_by('distributor_name'))
               | 
            
            
            
              | 
                773
               | 
              
                609
               | 
              
                  
               | 
            
            
            
              | 
                774
               | 
              
                610
               | 
              
                     return response(200, 'Get Model List Success', u'获取经销商列表成功', data={
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -776,9 +612,8 @@ def distributor_list(request): 
               | 
            
            
            
              | 
                776
               | 
              
                612
               | 
              
                     }) 
               | 
            
            
            
              | 
                777
               | 
              
                613
               | 
              
                  
               | 
            
            
            
              | 
                778
               | 
              
                614
               | 
              
                  
               | 
            
            
            
              | 
                779
               | 
              
                
               | 
              
                -def member_goods_order(request): 
               | 
            
            
            
              | 
                780
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                781
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                615
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                616
               | 
              
                +def member_goods_order(request, administrator): 
               | 
            
            
            
              | 
                782
               | 
              
                617
               | 
              
                     query = request.POST.get('query', '')
               | 
            
            
            
              | 
                783
               | 
              
                618
               | 
              
                     good_type = request.POST.get('good_type', '')
               | 
            
            
            
              | 
                784
               | 
              
                619
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -787,14 +622,6 @@ def member_goods_order(request): 
               | 
            
            
            
              | 
                787
               | 
              
                622
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                788
               | 
              
                623
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                789
               | 
              
                624
               | 
              
                  
               | 
            
            
            
              | 
                790
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                791
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                792
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                793
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                794
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                795
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                796
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                797
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                798
               | 
              
                625
               | 
              
                     orders = GoodsOrderInfo.objects.filter(Q(phone__icontains=query) | Q(user_id=query) | Q(title__icontains=query) & Q(status=True)).order_by('-pk')
               | 
            
            
            
              | 
                799
               | 
              
                626
               | 
              
                  
               | 
            
            
            
              | 
                800
               | 
              
                627
               | 
              
                     if good_type: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -822,40 +649,22 @@ def member_goods_order(request): 
               | 
            
            
            
              | 
                822
               | 
              
                649
               | 
              
                     }) 
               | 
            
            
            
              | 
                823
               | 
              
                650
               | 
              
                  
               | 
            
            
            
              | 
                824
               | 
              
                651
               | 
              
                  
               | 
            
            
            
              | 
                825
               | 
              
                
               | 
              
                -def member_goods_order_update(request): 
               | 
            
            
            
              | 
                826
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                827
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                652
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                653
               | 
              
                +def member_goods_order_update(request, administrator): 
               | 
            
            
            
              | 
                828
               | 
              
                654
               | 
              
                     order_id = request.POST.get('order_id', '')
               | 
            
            
            
              | 
                829
               | 
              
                655
               | 
              
                     tracking_number = request.POST.get('tracking_number', '')
               | 
            
            
            
              | 
                830
               | 
              
                656
               | 
              
                     remark = request.POST.get('remark', u'您的礼品正在快马加鞭赶来,请耐心等待呦~')
               | 
            
            
            
              | 
                831
               | 
              
                657
               | 
              
                  
               | 
            
            
            
              | 
                832
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                833
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                834
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                835
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                836
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                837
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                838
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                839
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                840
               | 
              
                658
               | 
              
                     if not send_trackingNumber_message(order_id, tracking_number, remark): 
               | 
            
            
            
              | 
                841
               | 
              
                659
               | 
              
                         return response(400001, 'Member Goods Order Update Failure', u'会员商品订单修改失败') 
               | 
            
            
            
              | 
                842
               | 
              
                660
               | 
              
                  
               | 
            
            
            
              | 
                843
               | 
              
                661
               | 
              
                     return response(200, 'Member Goods Order Update Success', u'会员商品订单修改成功') 
               | 
            
            
            
              | 
                844
               | 
              
                662
               | 
              
                  
               | 
            
            
            
              | 
                845
               | 
              
                663
               | 
              
                  
               | 
            
            
            
              | 
                846
               | 
              
                
               | 
              
                -def member_goods_order_batch_update(request): 
               | 
            
            
            
              | 
                847
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                848
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                664
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                665
               | 
              
                +def member_goods_order_batch_update(request, administrator): 
               | 
            
            
            
              | 
                849
               | 
              
                666
               | 
              
                     orders = json.loads(request.POST.get('orders', '[]'))
               | 
            
            
            
              | 
                850
               | 
              
                667
               | 
              
                  
               | 
            
            
            
              | 
                851
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                852
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                853
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                854
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                855
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                856
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                857
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                858
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                859
               | 
              
                668
               | 
              
                     err_orders = [] 
               | 
            
            
            
              | 
                860
               | 
              
                669
               | 
              
                     for order in orders: 
               | 
            
            
            
              | 
                861
               | 
              
                670
               | 
              
                         if not send_trackingNumber_message(order.get('order_id', ''), order.get('tracking_number', ''), order.get('remark', u'您的礼品正在快马加鞭赶来,请耐心等待呦~')):
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -909,9 +718,8 @@ def send_trackingNumber_message(order_id, tracking_number, remark): 
               | 
            
            
            
              | 
                909
               | 
              
                718
               | 
              
                         return False 
               | 
            
            
            
              | 
                910
               | 
              
                719
               | 
              
                  
               | 
            
            
            
              | 
                911
               | 
              
                720
               | 
              
                  
               | 
            
            
            
              | 
                912
               | 
              
                
               | 
              
                -def record_warehouse(request): 
               | 
            
            
            
              | 
                913
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                914
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                721
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                722
               | 
              
                +def record_warehouse(request, administrator): 
               | 
            
            
            
              | 
                915
               | 
              
                723
               | 
              
                     model_name = request.POST.get('model_name', '')
               | 
            
            
            
              | 
                916
               | 
              
                724
               | 
              
                     sn = request.POST.get('sn', '')
               | 
            
            
            
              | 
                917
               | 
              
                725
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -919,14 +727,6 @@ def record_warehouse(request): 
               | 
            
            
            
              | 
                919
               | 
              
                727
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                920
               | 
              
                728
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                921
               | 
              
                729
               | 
              
                  
               | 
            
            
            
              | 
                922
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                923
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                924
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                925
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                926
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                927
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                928
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                929
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                930
               | 
              
                730
               | 
              
                     models = ModelInfo.objects.filter(model_name__icontains=model_name, status=True).values_list('pk', flat=True)
               | 
            
            
            
              | 
                931
               | 
              
                731
               | 
              
                     logs = MchInfoEncryptLogInfo.objects.filter(model_pk__in=models, sn__icontains=sn, status=True) 
               | 
            
            
            
              | 
                932
               | 
              
                732
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -948,9 +748,8 @@ def record_warehouse(request): 
               | 
            
            
            
              | 
                948
               | 
              
                748
               | 
              
                     }) 
               | 
            
            
            
              | 
                949
               | 
              
                749
               | 
              
                  
               | 
            
            
            
              | 
                950
               | 
              
                750
               | 
              
                  
               | 
            
            
            
              | 
                951
               | 
              
                
               | 
              
                -def member_activity_list(request): 
               | 
            
            
            
              | 
                952
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                953
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                751
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                752
               | 
              
                +def member_activity_list(request, administrator): 
               | 
            
            
            
              | 
                954
               | 
              
                753
               | 
              
                     activity_type = request.POST.get('activity_type', '')
               | 
            
            
            
              | 
                955
               | 
              
                754
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                956
               | 
              
                755
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -958,15 +757,6 @@ def member_activity_list(request): 
               | 
            
            
            
              | 
                958
               | 
              
                757
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                959
               | 
              
                758
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                960
               | 
              
                759
               | 
              
                  
               | 
            
            
            
              | 
                961
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                962
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                963
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                964
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                965
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                966
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                967
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                968
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                969
               | 
              
                
               | 
              
                -    # logs = MemberActivityInfo.objects.filter(title__icontains=title) 
               | 
            
            
            
              | 
                970
               | 
              
                760
               | 
              
                     logs = MemberActivityInfo.objects.filter(status=True) 
               | 
            
            
            
              | 
                971
               | 
              
                761
               | 
              
                  
               | 
            
            
            
              | 
                972
               | 
              
                762
               | 
              
                     if activity_type: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -993,19 +783,10 @@ def member_activity_list(request): 
               | 
            
            
            
              | 
                993
               | 
              
                783
               | 
              
                     }) 
               | 
            
            
            
              | 
                994
               | 
              
                784
               | 
              
                  
               | 
            
            
            
              | 
                995
               | 
              
                785
               | 
              
                  
               | 
            
            
            
              | 
                996
               | 
              
                
               | 
              
                -def member_activity_detail(request): 
               | 
            
            
            
              | 
                997
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                998
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                786
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                787
               | 
              
                +def member_activity_detail(request, administrator): 
               | 
            
            
            
              | 
                999
               | 
              
                788
               | 
              
                     activity_id = request.POST.get('activity_id', '')
               | 
            
            
            
              | 
                1000
               | 
              
                789
               | 
              
                  
               | 
            
            
            
              | 
                1001
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1002
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1003
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1004
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1005
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1006
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1007
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1008
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1009
               | 
              
                790
               | 
              
                     try: 
               | 
            
            
            
              | 
                1010
               | 
              
                791
               | 
              
                         log = MemberActivityInfo.objects.get(activity_id=activity_id) 
               | 
            
            
            
              | 
                1011
               | 
              
                792
               | 
              
                     except MemberActivityInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1016,9 +797,8 @@ def member_activity_detail(request): 
               | 
            
            
            
              | 
                1016
               | 
              
                797
               | 
              
                     }) 
               | 
            
            
            
              | 
                1017
               | 
              
                798
               | 
              
                  
               | 
            
            
            
              | 
                1018
               | 
              
                799
               | 
              
                  
               | 
            
            
            
              | 
                1019
               | 
              
                
               | 
              
                -def member_activity_update(request): 
               | 
            
            
            
              | 
                1020
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1021
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                800
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                801
               | 
              
                +def member_activity_update(request, administrator): 
               | 
            
            
            
              | 
                1022
               | 
              
                802
               | 
              
                     activity_id = request.POST.get('activity_id', '')
               | 
            
            
            
              | 
                1023
               | 
              
                803
               | 
              
                     activity_type = int(request.POST.get('activity_type', 0))
               | 
            
            
            
              | 
                1024
               | 
              
                804
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1042,14 +822,6 @@ def member_activity_update(request): 
               | 
            
            
            
              | 
                1042
               | 
              
                822
               | 
              
                     share_h5_link = request.POST.get('share_h5_link', '')
               | 
            
            
            
              | 
                1043
               | 
              
                823
               | 
              
                     activity_state = int(request.POST.get('activity_state', 0))
               | 
            
            
            
              | 
                1044
               | 
              
                824
               | 
              
                  
               | 
            
            
            
              | 
                1045
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1046
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1047
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1048
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1049
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1050
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1051
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1052
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1053
               | 
              
                825
               | 
              
                     try: 
               | 
            
            
            
              | 
                1054
               | 
              
                826
               | 
              
                         log = MemberActivityInfo.objects.get(activity_id=activity_id, status=True) 
               | 
            
            
            
              | 
                1055
               | 
              
                827
               | 
              
                     except MemberActivityInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1082,9 +854,8 @@ def member_activity_update(request): 
               | 
            
            
            
              | 
                1082
               | 
              
                854
               | 
              
                     return response(200, 'MemberActivityInfo Update Success', u'会员活动更新成功') 
               | 
            
            
            
              | 
                1083
               | 
              
                855
               | 
              
                  
               | 
            
            
            
              | 
                1084
               | 
              
                856
               | 
              
                  
               | 
            
            
            
              | 
                1085
               | 
              
                
               | 
              
                -def member_activity_create(request): 
               | 
            
            
            
              | 
                1086
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1087
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                857
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                858
               | 
              
                +def member_activity_create(request, administrator): 
               | 
            
            
            
              | 
                1088
               | 
              
                859
               | 
              
                     activity_type = int(request.POST.get('activity_type', 0))
               | 
            
            
            
              | 
                1089
               | 
              
                860
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                1090
               | 
              
                861
               | 
              
                     subtitle = request.POST.get('subtitle', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1107,14 +878,6 @@ def member_activity_create(request): 
               | 
            
            
            
              | 
                1107
               | 
              
                878
               | 
              
                     share_h5_link = request.POST.get('share_h5_link', '')
               | 
            
            
            
              | 
                1108
               | 
              
                879
               | 
              
                     activity_state = int(request.POST.get('activity_state', 0))
               | 
            
            
            
              | 
                1109
               | 
              
                880
               | 
              
                  
               | 
            
            
            
              | 
                1110
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1111
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1112
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1113
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1114
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1115
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1116
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1117
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1118
               | 
              
                881
               | 
              
                     MemberActivityInfo.objects.create( 
               | 
            
            
            
              | 
                1119
               | 
              
                882
               | 
              
                         brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                1120
               | 
              
                883
               | 
              
                         activity_type=activity_type, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1144,21 +907,12 @@ def member_activity_create(request): 
               | 
            
            
            
              | 
                1144
               | 
              
                907
               | 
              
                     return response(200, 'MemberActivityInfo Create Success', u'会员活动创建成功') 
               | 
            
            
            
              | 
                1145
               | 
              
                908
               | 
              
                  
               | 
            
            
            
              | 
                1146
               | 
              
                909
               | 
              
                  
               | 
            
            
            
              | 
                1147
               | 
              
                
               | 
              
                -def member_activity_share_list(request): 
               | 
            
            
            
              | 
                1148
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1149
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                910
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                911
               | 
              
                +def member_activity_share_list(request, administrator): 
               | 
            
            
            
              | 
                1150
               | 
              
                912
               | 
              
                     activity_id = request.POST.get('activity_id', '')
               | 
            
            
            
              | 
                1151
               | 
              
                913
               | 
              
                     page = int(request.POST.get('page', 1))
               | 
            
            
            
              | 
                1152
               | 
              
                914
               | 
              
                     num = int(request.POST.get('num', 20))
               | 
            
            
            
              | 
                1153
               | 
              
                915
               | 
              
                  
               | 
            
            
            
              | 
                1154
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1155
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1156
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1157
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1158
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1159
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1160
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1161
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1162
               | 
              
                916
               | 
              
                     logs = MemberActivityGroupShareInfo.objects.filter(activity_id=activity_id, status=True) 
               | 
            
            
            
              | 
                1163
               | 
              
                917
               | 
              
                  
               | 
            
            
            
              | 
                1164
               | 
              
                918
               | 
              
                     total_integral = logs.aggregate(Sum('integral'))['integral__sum']
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1176,21 +930,12 @@ def member_activity_share_list(request): 
               | 
            
            
            
              | 
                1176
               | 
              
                930
               | 
              
                     }) 
               | 
            
            
            
              | 
                1177
               | 
              
                931
               | 
              
                  
               | 
            
            
            
              | 
                1178
               | 
              
                932
               | 
              
                  
               | 
            
            
            
              | 
                1179
               | 
              
                
               | 
              
                -def member_activity_register_list(request): 
               | 
            
            
            
              | 
                1180
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1181
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                933
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                934
               | 
              
                +def member_activity_register_list(request, administrator): 
               | 
            
            
            
              | 
                1182
               | 
              
                935
               | 
              
                     activity_id = request.POST.get('activity_id', '')
               | 
            
            
            
              | 
                1183
               | 
              
                936
               | 
              
                     page = int(request.POST.get('page', 1))
               | 
            
            
            
              | 
                1184
               | 
              
                937
               | 
              
                     num = int(request.POST.get('num', 20))
               | 
            
            
            
              | 
                1185
               | 
              
                938
               | 
              
                  
               | 
            
            
            
              | 
                1186
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1187
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1188
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1189
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1190
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1191
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1192
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1193
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1194
               | 
              
                939
               | 
              
                     logs = MemberActivitySignupInfo.objects.filter(activity_id=activity_id, status=True) 
               | 
            
            
            
              | 
                1195
               | 
              
                940
               | 
              
                  
               | 
            
            
            
              | 
                1196
               | 
              
                941
               | 
              
                     count = logs.count() 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1204,21 +949,12 @@ def member_activity_register_list(request): 
               | 
            
            
            
              | 
                1204
               | 
              
                949
               | 
              
                     }) 
               | 
            
            
            
              | 
                1205
               | 
              
                950
               | 
              
                  
               | 
            
            
            
              | 
                1206
               | 
              
                951
               | 
              
                  
               | 
            
            
            
              | 
                
               | 
              
                952
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                1207
               | 
              
                953
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                1208
               | 
              
                
               | 
              
                -def member_activity_contribute_audit(request): 
               | 
            
            
            
              | 
                1209
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1210
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                954
               | 
              
                +def member_activity_contribute_audit(request, administrator): 
               | 
            
            
            
              | 
                1211
               | 
              
                955
               | 
              
                     contribution_id = request.POST.get('contribution_id', '')
               | 
            
            
            
              | 
                1212
               | 
              
                956
               | 
              
                     audit = get_query_value(request, 'audit', val_cast_type='int') 
               | 
            
            
            
              | 
                1213
               | 
              
                957
               | 
              
                  
               | 
            
            
            
              | 
                1214
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1215
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1216
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1217
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1218
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1219
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1220
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1221
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1222
               | 
              
                958
               | 
              
                     try: 
               | 
            
            
            
              | 
                1223
               | 
              
                959
               | 
              
                         contribution = MemberActivityContributionInfo.objects.select_for_update().get(contribution_id=contribution_id, status=True) 
               | 
            
            
            
              | 
                1224
               | 
              
                960
               | 
              
                     except MemberActivityContributionInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1230,21 +966,12 @@ def member_activity_contribute_audit(request): 
               | 
            
            
            
              | 
                1230
               | 
              
                966
               | 
              
                     return response(200, 'Member Activity Contribution Audit Success', u'会员活动投稿审批成功') 
               | 
            
            
            
              | 
                1231
               | 
              
                967
               | 
              
                  
               | 
            
            
            
              | 
                1232
               | 
              
                968
               | 
              
                  
               | 
            
            
            
              | 
                
               | 
              
                969
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                1233
               | 
              
                970
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                1234
               | 
              
                
               | 
              
                -def member_activity_contribute_selected(request): 
               | 
            
            
            
              | 
                1235
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1236
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                971
               | 
              
                +def member_activity_contribute_selected(request, administrator): 
               | 
            
            
            
              | 
                1237
               | 
              
                972
               | 
              
                     contribution_id = request.POST.get('contribution_id', '')
               | 
            
            
            
              | 
                1238
               | 
              
                973
               | 
              
                     selected = get_query_value(request, 'selected', val_cast_type='int') 
               | 
            
            
            
              | 
                1239
               | 
              
                974
               | 
              
                  
               | 
            
            
            
              | 
                1240
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1241
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1242
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1243
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1244
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1245
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1246
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1247
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1248
               | 
              
                975
               | 
              
                     try: 
               | 
            
            
            
              | 
                1249
               | 
              
                976
               | 
              
                         contribution = MemberActivityContributionInfo.objects.select_for_update().get(contribution_id=contribution_id, status=True) 
               | 
            
            
            
              | 
                1250
               | 
              
                977
               | 
              
                     except MemberActivityContributionInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1256,22 +983,13 @@ def member_activity_contribute_selected(request): 
               | 
            
            
            
              | 
                1256
               | 
              
                983
               | 
              
                     return response(200, 'Member Activity Contribution Selected Success', u'会员活动投稿入围成功') 
               | 
            
            
            
              | 
                1257
               | 
              
                984
               | 
              
                  
               | 
            
            
            
              | 
                1258
               | 
              
                985
               | 
              
                  
               | 
            
            
            
              | 
                1259
               | 
              
                
               | 
              
                -def member_activity_contribute_welfare_list(request): 
               | 
            
            
            
              | 
                1260
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1261
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                986
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                987
               | 
              
                +def member_activity_contribute_welfare_list(request, administrator): 
               | 
            
            
            
              | 
                1262
               | 
              
                988
               | 
              
                     welfare_type = request.POST.get('welfare_type', '')
               | 
            
            
            
              | 
                1263
               | 
              
                989
               | 
              
                     welfare_title = request.POST.get('welfare_title', '')
               | 
            
            
            
              | 
                1264
               | 
              
                990
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1265
               | 
              
                991
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1266
               | 
              
                992
               | 
              
                  
               | 
            
            
            
              | 
                1267
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1268
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1269
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1270
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1271
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1272
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1273
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1274
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1275
               | 
              
                993
               | 
              
                     welfares = MemberActivityContributionWelfareInfo.objects.filter(status=True) 
               | 
            
            
            
              | 
                1276
               | 
              
                994
               | 
              
                  
               | 
            
            
            
              | 
                1277
               | 
              
                995
               | 
              
                     if welfare_type: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1293,19 +1011,10 @@ def member_activity_contribute_welfare_list(request): 
               | 
            
            
            
              | 
                1293
               | 
              
                1011
               | 
              
                     }) 
               | 
            
            
            
              | 
                1294
               | 
              
                1012
               | 
              
                  
               | 
            
            
            
              | 
                1295
               | 
              
                1013
               | 
              
                  
               | 
            
            
            
              | 
                1296
               | 
              
                
               | 
              
                -def member_activity_contribute_welfare_detail(request): 
               | 
            
            
            
              | 
                1297
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1298
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1014
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1015
               | 
              
                +def member_activity_contribute_welfare_detail(request, administrator): 
               | 
            
            
            
              | 
                1299
               | 
              
                1016
               | 
              
                     welfare_id = request.POST.get('welfare_id', '')
               | 
            
            
            
              | 
                1300
               | 
              
                1017
               | 
              
                  
               | 
            
            
            
              | 
                1301
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1302
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1303
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1304
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1305
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1306
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1307
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1308
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1309
               | 
              
                1018
               | 
              
                     try: 
               | 
            
            
            
              | 
                1310
               | 
              
                1019
               | 
              
                         welfare = MemberActivityContributionWelfareInfo.objects.get(welfare_id=welfare_id) 
               | 
            
            
            
              | 
                1311
               | 
              
                1020
               | 
              
                     except MemberActivityContributionWelfareInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1316,9 +1025,8 @@ def member_activity_contribute_welfare_detail(request): 
               | 
            
            
            
              | 
                1316
               | 
              
                1025
               | 
              
                     }) 
               | 
            
            
            
              | 
                1317
               | 
              
                1026
               | 
              
                  
               | 
            
            
            
              | 
                1318
               | 
              
                1027
               | 
              
                  
               | 
            
            
            
              | 
                1319
               | 
              
                
               | 
              
                -def member_activity_contribute_welfare_update(request): 
               | 
            
            
            
              | 
                1320
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1321
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1028
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1029
               | 
              
                +def member_activity_contribute_welfare_update(request, administrator): 
               | 
            
            
            
              | 
                1322
               | 
              
                1030
               | 
              
                     welfare_id = request.POST.get('welfare_id', '')
               | 
            
            
            
              | 
                1323
               | 
              
                1031
               | 
              
                     welfare_type = int(request.POST.get('welfare_type', 0))
               | 
            
            
            
              | 
                1324
               | 
              
                1032
               | 
              
                     welfare_title = request.POST.get('welfare_title', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1326,14 +1034,6 @@ def member_activity_contribute_welfare_update(request): 
               | 
            
            
            
              | 
                1326
               | 
              
                1034
               | 
              
                     welfare_value = request.POST.get('welfare_value', '')
               | 
            
            
            
              | 
                1327
               | 
              
                1035
               | 
              
                     welfare_image_path = request.POST.get('welfare_image_path', '')
               | 
            
            
            
              | 
                1328
               | 
              
                1036
               | 
              
                  
               | 
            
            
            
              | 
                1329
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1330
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1331
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1332
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1333
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1334
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1335
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1336
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1337
               | 
              
                1037
               | 
              
                     try: 
               | 
            
            
            
              | 
                1338
               | 
              
                1038
               | 
              
                         welfare = MemberActivityContributionWelfareInfo.objects.get(welfare_id=welfare_id, status=True) 
               | 
            
            
            
              | 
                1339
               | 
              
                1039
               | 
              
                     except MemberActivityContributionWelfareInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1349,23 +1049,14 @@ def member_activity_contribute_welfare_update(request): 
               | 
            
            
            
              | 
                1349
               | 
              
                1049
               | 
              
                     return response(200, 'Update Member Activity Contribute Welfare Success', u'更新会员活动投稿福利成功') 
               | 
            
            
            
              | 
                1350
               | 
              
                1050
               | 
              
                  
               | 
            
            
            
              | 
                1351
               | 
              
                1051
               | 
              
                  
               | 
            
            
            
              | 
                1352
               | 
              
                
               | 
              
                -def member_activity_contribute_welfare_create(request): 
               | 
            
            
            
              | 
                1353
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1354
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1052
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1053
               | 
              
                +def member_activity_contribute_welfare_create(request, administrator): 
               | 
            
            
            
              | 
                1355
               | 
              
                1054
               | 
              
                     welfare_type = int(request.POST.get('welfare_type', 0))
               | 
            
            
            
              | 
                1356
               | 
              
                1055
               | 
              
                     welfare_title = request.POST.get('welfare_title', '')
               | 
            
            
            
              | 
                1357
               | 
              
                1056
               | 
              
                     welfare_detail = request.POST.get('welfare_detail', '')
               | 
            
            
            
              | 
                1358
               | 
              
                1057
               | 
              
                     welfare_value = request.POST.get('welfare_value', '')
               | 
            
            
            
              | 
                1359
               | 
              
                1058
               | 
              
                     welfare_image_path = request.POST.get('welfare_image_path', '')
               | 
            
            
            
              | 
                1360
               | 
              
                1059
               | 
              
                  
               | 
            
            
            
              | 
                1361
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1362
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1363
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1364
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1365
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1366
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1367
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1368
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1369
               | 
              
                1060
               | 
              
                     MemberActivityContributionWelfareInfo.objects.create( 
               | 
            
            
            
              | 
                1370
               | 
              
                1061
               | 
              
                         brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                1371
               | 
              
                1062
               | 
              
                         welfare_type=welfare_type, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1378,23 +1069,14 @@ def member_activity_contribute_welfare_create(request): 
               | 
            
            
            
              | 
                1378
               | 
              
                1069
               | 
              
                     return response(200, 'Create Member Activity Contribute Welfare Success', u'创建会员活动投稿福利成功') 
               | 
            
            
            
              | 
                1379
               | 
              
                1070
               | 
              
                  
               | 
            
            
            
              | 
                1380
               | 
              
                1071
               | 
              
                  
               | 
            
            
            
              | 
                1381
               | 
              
                
               | 
              
                -def coupon_list(request): 
               | 
            
            
            
              | 
                1382
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1383
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1072
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1073
               | 
              
                +def coupon_list(request, administrator): 
               | 
            
            
            
              | 
                1384
               | 
              
                1074
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                1385
               | 
              
                1075
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                1386
               | 
              
                1076
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                1387
               | 
              
                1077
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1388
               | 
              
                1078
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1389
               | 
              
                1079
               | 
              
                  
               | 
            
            
            
              | 
                1390
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1391
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1392
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1393
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1394
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1395
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1396
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1397
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1398
               | 
              
                1080
               | 
              
                     logs = CouponInfo.objects.filter(coupon_title__icontains=title, status=True) 
               | 
            
            
            
              | 
                1399
               | 
              
                1081
               | 
              
                  
               | 
            
            
            
              | 
                1400
               | 
              
                1082
               | 
              
                     if start_time and end_time: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1415,19 +1097,10 @@ def coupon_list(request): 
               | 
            
            
            
              | 
                1415
               | 
              
                1097
               | 
              
                     }) 
               | 
            
            
            
              | 
                1416
               | 
              
                1098
               | 
              
                  
               | 
            
            
            
              | 
                1417
               | 
              
                1099
               | 
              
                  
               | 
            
            
            
              | 
                1418
               | 
              
                
               | 
              
                -def coupon_detail(request): 
               | 
            
            
            
              | 
                1419
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1420
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1100
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1101
               | 
              
                +def coupon_detail(request, administrator): 
               | 
            
            
            
              | 
                1421
               | 
              
                1102
               | 
              
                     coupon_id = request.POST.get('coupon_id', '')
               | 
            
            
            
              | 
                1422
               | 
              
                1103
               | 
              
                  
               | 
            
            
            
              | 
                1423
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1424
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1425
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1426
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1427
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1428
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1429
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1430
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1431
               | 
              
                1104
               | 
              
                     try: 
               | 
            
            
            
              | 
                1432
               | 
              
                1105
               | 
              
                         log = CouponInfo.objects.get(coupon_id=coupon_id) 
               | 
            
            
            
              | 
                1433
               | 
              
                1106
               | 
              
                     except CouponInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1440,9 +1113,8 @@ def coupon_detail(request): 
               | 
            
            
            
              | 
                1440
               | 
              
                1113
               | 
              
                     }) 
               | 
            
            
            
              | 
                1441
               | 
              
                1114
               | 
              
                  
               | 
            
            
            
              | 
                1442
               | 
              
                1115
               | 
              
                  
               | 
            
            
            
              | 
                1443
               | 
              
                
               | 
              
                -def coupon_create(request): 
               | 
            
            
            
              | 
                1444
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1445
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1116
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1117
               | 
              
                +def coupon_create(request, administrator): 
               | 
            
            
            
              | 
                1446
               | 
              
                1118
               | 
              
                     coupon_title = request.POST.get('coupon_title', '')
               | 
            
            
            
              | 
                1447
               | 
              
                1119
               | 
              
                     coupon_detail = request.POST.get('coupon_detail', '')
               | 
            
            
            
              | 
                1448
               | 
              
                1120
               | 
              
                     coupon_value = int(request.POST.get('coupon_value', 0))
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1452,16 +1124,8 @@ def coupon_create(request): 
               | 
            
            
            
              | 
                1452
               | 
              
                1124
               | 
              
                     coupon_expire_at = request.POST.get('coupon_expire_at', '')
               | 
            
            
            
              | 
                1453
               | 
              
                1125
               | 
              
                     is_coupon_admin_writeoff = int(request.POST.get('is_coupon_admin_writeoff', 1))
               | 
            
            
            
              | 
                1454
               | 
              
                1126
               | 
              
                  
               | 
            
            
            
              | 
                1455
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1456
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1457
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1458
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1459
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1460
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1461
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1462
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1463
               | 
              
                1127
               | 
              
                     info = CouponInfo.objects.create( 
               | 
            
            
            
              | 
                1464
               | 
              
                
               | 
              
                -        brand_id=brand_id, 
               | 
            
            
            
              | 
                
               | 
              
                1128
               | 
              
                +        brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                1465
               | 
              
                1129
               | 
              
                         coupon_title=coupon_title, 
               | 
            
            
            
              | 
                1466
               | 
              
                1130
               | 
              
                         coupon_detail=coupon_detail, 
               | 
            
            
            
              | 
                1467
               | 
              
                1131
               | 
              
                         coupon_value=coupon_value, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1478,9 +1142,8 @@ def coupon_create(request): 
               | 
            
            
            
              | 
                1478
               | 
              
                1142
               | 
              
                     return response(200, 'CouponInfo Create Success', u'劵创建成功') 
               | 
            
            
            
              | 
                1479
               | 
              
                1143
               | 
              
                  
               | 
            
            
            
              | 
                1480
               | 
              
                1144
               | 
              
                  
               | 
            
            
            
              | 
                1481
               | 
              
                
               | 
              
                -def coupon_update(request): 
               | 
            
            
            
              | 
                1482
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1483
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1145
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1146
               | 
              
                +def coupon_update(request, administrator): 
               | 
            
            
            
              | 
                1484
               | 
              
                1147
               | 
              
                     coupon_id = request.POST.get('coupon_id', '')
               | 
            
            
            
              | 
                1485
               | 
              
                1148
               | 
              
                     coupon_title = request.POST.get('coupon_title', '')
               | 
            
            
            
              | 
                1486
               | 
              
                1149
               | 
              
                     coupon_detail = request.POST.get('coupon_detail', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1491,20 +1154,12 @@ def coupon_update(request): 
               | 
            
            
            
              | 
                1491
               | 
              
                1154
               | 
              
                     coupon_expire_at = request.POST.get('coupon_expire_at', '')
               | 
            
            
            
              | 
                1492
               | 
              
                1155
               | 
              
                     is_coupon_admin_writeoff = int(request.POST.get('is_coupon_admin_writeoff', 1))
               | 
            
            
            
              | 
                1493
               | 
              
                1156
               | 
              
                  
               | 
            
            
            
              | 
                1494
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1495
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1496
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1497
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1498
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1499
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1500
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1501
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1502
               | 
              
                1157
               | 
              
                     try: 
               | 
            
            
            
              | 
                1503
               | 
              
                1158
               | 
              
                         log = CouponInfo.objects.get(coupon_id=coupon_id, status=True) 
               | 
            
            
            
              | 
                1504
               | 
              
                1159
               | 
              
                     except CouponInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1505
               | 
              
                1160
               | 
              
                         return response() 
               | 
            
            
            
              | 
                1506
               | 
              
                1161
               | 
              
                  
               | 
            
            
            
              | 
                1507
               | 
              
                
               | 
              
                -    log.brand_id = brand_id 
               | 
            
            
            
              | 
                
               | 
              
                1162
               | 
              
                +    log.brand_id = administrator.brand_id 
               | 
            
            
            
              | 
                1508
               | 
              
                1163
               | 
              
                     log.coupon_title = coupon_title 
               | 
            
            
            
              | 
                1509
               | 
              
                1164
               | 
              
                     log.coupon_detail = coupon_detail 
               | 
            
            
            
              | 
                1510
               | 
              
                1165
               | 
              
                     log.coupon_value = coupon_value 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1519,19 +1174,10 @@ def coupon_update(request): 
               | 
            
            
            
              | 
                1519
               | 
              
                1174
               | 
              
                     return response(200, 'CouponInfo Update Success', u'劵更新成功') 
               | 
            
            
            
              | 
                1520
               | 
              
                1175
               | 
              
                  
               | 
            
            
            
              | 
                1521
               | 
              
                1176
               | 
              
                  
               | 
            
            
            
              | 
                1522
               | 
              
                
               | 
              
                -def coupon_delete(request): 
               | 
            
            
            
              | 
                1523
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1524
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1177
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1178
               | 
              
                +def coupon_delete(request, administrator): 
               | 
            
            
            
              | 
                1525
               | 
              
                1179
               | 
              
                     coupon_id = request.POST.get('activity_id', '')
               | 
            
            
            
              | 
                1526
               | 
              
                1180
               | 
              
                  
               | 
            
            
            
              | 
                1527
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1528
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1529
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1530
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1531
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1532
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1533
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1534
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1535
               | 
              
                1181
               | 
              
                     try: 
               | 
            
            
            
              | 
                1536
               | 
              
                1182
               | 
              
                         log = CouponInfo.objects.get(coupon_id=coupon_id, status=True) 
               | 
            
            
            
              | 
                1537
               | 
              
                1183
               | 
              
                     except CouponInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1543,26 +1189,18 @@ def coupon_delete(request): 
               | 
            
            
            
              | 
                1543
               | 
              
                1189
               | 
              
                     return response(200, 'CouponInfo Delete Success', u'劵删除成功') 
               | 
            
            
            
              | 
                1544
               | 
              
                1190
               | 
              
                  
               | 
            
            
            
              | 
                1545
               | 
              
                1191
               | 
              
                  
               | 
            
            
            
              | 
                1546
               | 
              
                
               | 
              
                -def member_goods_list(request): 
               | 
            
            
            
              | 
                1547
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1548
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1192
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1193
               | 
              
                +def member_goods_list(request, administrator): 
               | 
            
            
            
              | 
                1549
               | 
              
                1194
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                1550
               | 
              
                1195
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1551
               | 
              
                1196
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1552
               | 
              
                1197
               | 
              
                  
               | 
            
            
            
              | 
                1553
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1554
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1555
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1556
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1557
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1558
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1559
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1560
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1561
               | 
              
                1198
               | 
              
                     logs = GoodsInfo.objects.filter(title__icontains=title, only_for_member=False).order_by('-pk')
               | 
            
            
            
              | 
                1562
               | 
              
                1199
               | 
              
                  
               | 
            
            
            
              | 
                1563
               | 
              
                1200
               | 
              
                     count = logs.count() 
               | 
            
            
            
              | 
                1564
               | 
              
                1201
               | 
              
                     logs, left = pagination(logs, page, num) 
               | 
            
            
            
              | 
                1565
               | 
              
                1202
               | 
              
                     logs = [log.admindata for log in logs] 
               | 
            
            
            
              | 
                
               | 
              
                1203
               | 
              
                + 
               | 
            
            
            
              | 
                1566
               | 
              
                1204
               | 
              
                     return response(200, 'Get Member Goods Success', u'获取会员商品成功', data={
               | 
            
            
            
              | 
                1567
               | 
              
                1205
               | 
              
                         'logs': logs, 
               | 
            
            
            
              | 
                1568
               | 
              
                1206
               | 
              
                         'left': left, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1570,19 +1208,10 @@ def member_goods_list(request): 
               | 
            
            
            
              | 
                1570
               | 
              
                1208
               | 
              
                     }) 
               | 
            
            
            
              | 
                1571
               | 
              
                1209
               | 
              
                  
               | 
            
            
            
              | 
                1572
               | 
              
                1210
               | 
              
                  
               | 
            
            
            
              | 
                1573
               | 
              
                
               | 
              
                -def member_goods_detail(request): 
               | 
            
            
            
              | 
                1574
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1575
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1211
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1212
               | 
              
                +def member_goods_detail(request, administrator): 
               | 
            
            
            
              | 
                1576
               | 
              
                1213
               | 
              
                     good_id = request.POST.get('good_id', '')
               | 
            
            
            
              | 
                1577
               | 
              
                1214
               | 
              
                  
               | 
            
            
            
              | 
                1578
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1579
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1580
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1581
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1582
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1583
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1584
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1585
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1586
               | 
              
                1215
               | 
              
                     try: 
               | 
            
            
            
              | 
                1587
               | 
              
                1216
               | 
              
                         log = GoodsInfo.objects.get(good_id=good_id) 
               | 
            
            
            
              | 
                1588
               | 
              
                1217
               | 
              
                     except GoodsInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1595,9 +1224,8 @@ def member_goods_detail(request): 
               | 
            
            
            
              | 
                1595
               | 
              
                1224
               | 
              
                     }) 
               | 
            
            
            
              | 
                1596
               | 
              
                1225
               | 
              
                  
               | 
            
            
            
              | 
                1597
               | 
              
                1226
               | 
              
                  
               | 
            
            
            
              | 
                1598
               | 
              
                
               | 
              
                -def member_goods_update(request): 
               | 
            
            
            
              | 
                1599
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1600
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1227
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1228
               | 
              
                +def member_goods_update(request, administrator): 
               | 
            
            
            
              | 
                1601
               | 
              
                1229
               | 
              
                     good_id = request.POST.get('good_id', '')
               | 
            
            
            
              | 
                1602
               | 
              
                1230
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                1603
               | 
              
                1231
               | 
              
                     desc = request.POST.get('desc', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1609,14 +1237,6 @@ def member_goods_update(request): 
               | 
            
            
            
              | 
                1609
               | 
              
                1237
               | 
              
                     integral = int(request.POST.get('integral', 0))
               | 
            
            
            
              | 
                1610
               | 
              
                1238
               | 
              
                     fee = int(request.POST.get('fee', 0))
               | 
            
            
            
              | 
                1611
               | 
              
                1239
               | 
              
                  
               | 
            
            
            
              | 
                1612
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1613
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1614
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1615
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1616
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1617
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1618
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1619
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1620
               | 
              
                1240
               | 
              
                     try: 
               | 
            
            
            
              | 
                1621
               | 
              
                1241
               | 
              
                         log = GoodsInfo.objects.get(good_id=good_id, status=True) 
               | 
            
            
            
              | 
                1622
               | 
              
                1242
               | 
              
                     except GoodsInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1636,9 +1256,8 @@ def member_goods_update(request): 
               | 
            
            
            
              | 
                1636
               | 
              
                1256
               | 
              
                     return response(200, 'GoodsInfo Update Success', u'积分商品更新成功') 
               | 
            
            
            
              | 
                1637
               | 
              
                1257
               | 
              
                  
               | 
            
            
            
              | 
                1638
               | 
              
                1258
               | 
              
                  
               | 
            
            
            
              | 
                1639
               | 
              
                
               | 
              
                -def member_goods_create(request): 
               | 
            
            
            
              | 
                1640
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1641
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1259
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1260
               | 
              
                +def member_goods_create(request, administrator): 
               | 
            
            
            
              | 
                1642
               | 
              
                1261
               | 
              
                     good_type = int(request.POST.get('good_type', 0))
               | 
            
            
            
              | 
                1643
               | 
              
                1262
               | 
              
                     title = request.POST.get('title', '')
               | 
            
            
            
              | 
                1644
               | 
              
                1263
               | 
              
                     desc = request.POST.get('desc', '')
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1650,14 +1269,6 @@ def member_goods_create(request): 
               | 
            
            
            
              | 
                1650
               | 
              
                1269
               | 
              
                     integral = int(request.POST.get('integral', 0))
               | 
            
            
            
              | 
                1651
               | 
              
                1270
               | 
              
                     fee = int(request.POST.get('fee', 0))
               | 
            
            
            
              | 
                1652
               | 
              
                1271
               | 
              
                  
               | 
            
            
            
              | 
                1653
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1654
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1655
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1656
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1657
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1658
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1659
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1660
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1661
               | 
              
                1272
               | 
              
                     GoodsInfo.objects.create( 
               | 
            
            
            
              | 
                1662
               | 
              
                1273
               | 
              
                         brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                1663
               | 
              
                1274
               | 
              
                         good_type=good_type, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1675,23 +1286,14 @@ def member_goods_create(request): 
               | 
            
            
            
              | 
                1675
               | 
              
                1286
               | 
              
                     return response(200, 'GoodsInfo Create Success', u'积分商品创建成功') 
               | 
            
            
            
              | 
                1676
               | 
              
                1287
               | 
              
                  
               | 
            
            
            
              | 
                1677
               | 
              
                1288
               | 
              
                  
               | 
            
            
            
              | 
                1678
               | 
              
                
               | 
              
                -def complement_code_list(request): 
               | 
            
            
            
              | 
                1679
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1680
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                1681
               | 
              
                
               | 
              
                -    page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1682
               | 
              
                
               | 
              
                -    num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                
               | 
              
                1289
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1290
               | 
              
                +def complement_code_list(request, administrator): 
               | 
            
            
            
              | 
                1683
               | 
              
                1291
               | 
              
                     start_time = request.POST.get('start_time', '')
               | 
            
            
            
              | 
                1684
               | 
              
                1292
               | 
              
                     end_time = request.POST.get('end_time', '')
               | 
            
            
            
              | 
                1685
               | 
              
                1293
               | 
              
                     type_ = request.POST.get('type', '')
               | 
            
            
            
              | 
                1686
               | 
              
                1294
               | 
              
                     query = request.POST.get('query', '')
               | 
            
            
            
              | 
                1687
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1688
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1689
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1690
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1691
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1692
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1693
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1694
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                
               | 
              
                1295
               | 
              
                +    page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                
               | 
              
                1296
               | 
              
                +    num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1695
               | 
              
                1297
               | 
              
                  
               | 
            
            
            
              | 
                1696
               | 
              
                1298
               | 
              
                     logs = ComplementCodeLogInfo.objects.filter(status=True) 
               | 
            
            
            
              | 
                1697
               | 
              
                1299
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1723,21 +1325,14 @@ def complement_code_list(request): 
               | 
            
            
            
              | 
                1723
               | 
              
                1325
               | 
              
                     }) 
               | 
            
            
            
              | 
                1724
               | 
              
                1326
               | 
              
                  
               | 
            
            
            
              | 
                1725
               | 
              
                1327
               | 
              
                  
               | 
            
            
            
              | 
                
               | 
              
                1328
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                1726
               | 
              
                1329
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                1727
               | 
              
                
               | 
              
                -def complement_code_audit(request): 
               | 
            
            
            
              | 
                
               | 
              
                1330
               | 
              
                +def complement_code_audit(request, administrator): 
               | 
            
            
            
              | 
                1728
               | 
              
                1331
               | 
              
                     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1729
               | 
              
                1332
               | 
              
                     admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                1730
               | 
              
                1333
               | 
              
                     log_id = request.POST.get('log_id', '')
               | 
            
            
            
              | 
                1731
               | 
              
                1334
               | 
              
                     audit_status = int(request.POST.get('audit_status', 0))  # -1 审核不通过, 1 审核通过
               | 
            
            
            
              | 
                1732
               | 
              
                1335
               | 
              
                  
               | 
            
            
            
              | 
                1733
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1734
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1735
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1736
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1737
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1738
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1739
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1740
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1741
               | 
              
                1336
               | 
              
                     if audit_status not in [ComplementCodeLogInfo.AUDIT_REFUSED, ComplementCodeLogInfo.AUDIT_PASS]: 
               | 
            
            
            
              | 
                1742
               | 
              
                1337
               | 
              
                         return response(ComplementCodeStatusCode.COMPLEMENT_CODE_STATUS_INVALID) 
               | 
            
            
            
              | 
                1743
               | 
              
                1338
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1820,21 +1415,12 @@ def complement_code_audit(request): 
               | 
            
            
            
              | 
                1820
               | 
              
                1415
               | 
              
                     return response() 
               | 
            
            
            
              | 
                1821
               | 
              
                1416
               | 
              
                  
               | 
            
            
            
              | 
                1822
               | 
              
                1417
               | 
              
                  
               | 
            
            
            
              | 
                
               | 
              
                1418
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                1823
               | 
              
                1419
               | 
              
                 @transaction.atomic 
               | 
            
            
            
              | 
                1824
               | 
              
                
               | 
              
                -def complement_code_contacted(request): 
               | 
            
            
            
              | 
                1825
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1826
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1420
               | 
              
                +def complement_code_contacted(request, administrator): 
               | 
            
            
            
              | 
                1827
               | 
              
                1421
               | 
              
                     log_id = request.POST.get('log_id', '')
               | 
            
            
            
              | 
                1828
               | 
              
                1422
               | 
              
                     is_contacted = int(request.POST.get('is_contacted', 0))  # 0 未联系, 1 已联系
               | 
            
            
            
              | 
                1829
               | 
              
                1423
               | 
              
                  
               | 
            
            
            
              | 
                1830
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1831
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1832
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1833
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1834
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1835
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1836
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1837
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1838
               | 
              
                1424
               | 
              
                     try: 
               | 
            
            
            
              | 
                1839
               | 
              
                1425
               | 
              
                         log = ComplementCodeLogInfo.objects.select_for_update().get(log_id=log_id, status=True) 
               | 
            
            
            
              | 
                1840
               | 
              
                1426
               | 
              
                     except ComplementCodeLogInfo.DoesNotExist: 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1846,20 +1432,11 @@ def complement_code_contacted(request): 
               | 
            
            
            
              | 
                1846
               | 
              
                1432
               | 
              
                     return response() 
               | 
            
            
            
              | 
                1847
               | 
              
                1433
               | 
              
                  
               | 
            
            
            
              | 
                1848
               | 
              
                1434
               | 
              
                  
               | 
            
            
            
              | 
                1849
               | 
              
                
               | 
              
                -def administrator_list(request): 
               | 
            
            
            
              | 
                1850
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1851
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1435
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1436
               | 
              
                +def administrator_list(request, administrator): 
               | 
            
            
            
              | 
                1852
               | 
              
                1437
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1853
               | 
              
                1438
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1854
               | 
              
                1439
               | 
              
                  
               | 
            
            
            
              | 
                1855
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1856
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1857
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1858
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1859
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1860
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1861
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1862
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1863
               | 
              
                1440
               | 
              
                     if administrator.admin_type != AdministratorInfo.ADMINISTRATOR: 
               | 
            
            
            
              | 
                1864
               | 
              
                1441
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_PERMISSION_DENIED) 
               | 
            
            
            
              | 
                1865
               | 
              
                1442
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1868,6 +1445,7 @@ def administrator_list(request): 
               | 
            
            
            
              | 
                1868
               | 
              
                1445
               | 
              
                     count = logs.count() 
               | 
            
            
            
              | 
                1869
               | 
              
                1446
               | 
              
                     logs, left = pagination(logs, page, num) 
               | 
            
            
            
              | 
                1870
               | 
              
                1447
               | 
              
                     logs = [log.admindata for log in logs] 
               | 
            
            
            
              | 
                
               | 
              
                1448
               | 
              
                + 
               | 
            
            
            
              | 
                1871
               | 
              
                1449
               | 
              
                     return response(200, 'Get Admin List Success', u'获取后台管理员成功', data={
               | 
            
            
            
              | 
                1872
               | 
              
                1450
               | 
              
                         'logs': logs, 
               | 
            
            
            
              | 
                1873
               | 
              
                1451
               | 
              
                         'left': left, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1875,31 +1453,21 @@ def administrator_list(request): 
               | 
            
            
            
              | 
                1875
               | 
              
                1453
               | 
              
                     }) 
               | 
            
            
            
              | 
                1876
               | 
              
                1454
               | 
              
                  
               | 
            
            
            
              | 
                1877
               | 
              
                1455
               | 
              
                  
               | 
            
            
            
              | 
                1878
               | 
              
                
               | 
              
                -def administrator_create(request): 
               | 
            
            
            
              | 
                1879
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1880
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                1881
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                
               | 
              
                1456
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1457
               | 
              
                +def administrator_create(request, administrator): 
               | 
            
            
            
              | 
                1882
               | 
              
                1458
               | 
              
                     admin_type = request.POST.get('admin_type', '')
               | 
            
            
            
              | 
                1883
               | 
              
                1459
               | 
              
                     phone = request.POST.get('phone', '')
               | 
            
            
            
              | 
                1884
               | 
              
                1460
               | 
              
                     name = request.POST.get('name', '')
               | 
            
            
            
              | 
                1885
               | 
              
                1461
               | 
              
                     password = request.POST.get('password', '')
               | 
            
            
            
              | 
                1886
               | 
              
                1462
               | 
              
                     brand_name = request.POST.get('brand_name', '')
               | 
            
            
            
              | 
                1887
               | 
              
                1463
               | 
              
                  
               | 
            
            
            
              | 
                1888
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1889
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1890
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1891
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1892
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1893
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1894
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1895
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1896
               | 
              
                1464
               | 
              
                     if administrator.admin_type != AdministratorInfo.ADMINISTRATOR: 
               | 
            
            
            
              | 
                1897
               | 
              
                1465
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_PERMISSION_DENIED) 
               | 
            
            
            
              | 
                1898
               | 
              
                1466
               | 
              
                  
               | 
            
            
            
              | 
                1899
               | 
              
                1467
               | 
              
                     encryption = make_password(strip(password), settings.MAKE_PASSWORD_SALT, settings.MAKE_PASSWORD_HASHER) 
               | 
            
            
            
              | 
                1900
               | 
              
                1468
               | 
              
                  
               | 
            
            
            
              | 
                1901
               | 
              
                1469
               | 
              
                     AdministratorInfo.objects.create( 
               | 
            
            
            
              | 
                1902
               | 
              
                
               | 
              
                -        brand_id=brand_id, 
               | 
            
            
            
              | 
                
               | 
              
                1470
               | 
              
                +        brand_id=administrator.brand_id, 
               | 
            
            
            
              | 
                1903
               | 
              
                1471
               | 
              
                         brand_name=brand_name, 
               | 
            
            
            
              | 
                1904
               | 
              
                1472
               | 
              
                         admin_type=admin_type, 
               | 
            
            
            
              | 
                1905
               | 
              
                1473
               | 
              
                         phone=phone, 
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1911,24 +1479,14 @@ def administrator_create(request): 
               | 
            
            
            
              | 
                1911
               | 
              
                1479
               | 
              
                     return response(200, 'Create Admin Success', u'创建后台管理员成功') 
               | 
            
            
            
              | 
                1912
               | 
              
                1480
               | 
              
                  
               | 
            
            
            
              | 
                1913
               | 
              
                1481
               | 
              
                  
               | 
            
            
            
              | 
                1914
               | 
              
                
               | 
              
                -def administrator_update(request): 
               | 
            
            
            
              | 
                1915
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1916
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                1917
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                
               | 
              
                1482
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1483
               | 
              
                +def administrator_update(request, administrator): 
               | 
            
            
            
              | 
                1918
               | 
              
                1484
               | 
              
                     target_admin_id = request.POST.get('target_admin_id', '')
               | 
            
            
            
              | 
                1919
               | 
              
                1485
               | 
              
                     admin_type = int(request.POST.get('admin_type', -1))
               | 
            
            
            
              | 
                1920
               | 
              
                1486
               | 
              
                     phone = request.POST.get('phone', '')
               | 
            
            
            
              | 
                1921
               | 
              
                1487
               | 
              
                     name = request.POST.get('name', '')
               | 
            
            
            
              | 
                1922
               | 
              
                1488
               | 
              
                     password = request.POST.get('password', '')
               | 
            
            
            
              | 
                1923
               | 
              
                1489
               | 
              
                  
               | 
            
            
            
              | 
                1924
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1925
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1926
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1927
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1928
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1929
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1930
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1931
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1932
               | 
              
                1490
               | 
              
                     if administrator.admin_type != AdministratorInfo.ADMINISTRATOR: 
               | 
            
            
            
              | 
                1933
               | 
              
                1491
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_PERMISSION_DENIED) 
               | 
            
            
            
              | 
                1934
               | 
              
                1492
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1953,19 +1511,10 @@ def administrator_update(request): 
               | 
            
            
            
              | 
                1953
               | 
              
                1511
               | 
              
                     return response(200, 'Update Admin Success', u'更新后台管理员成功') 
               | 
            
            
            
              | 
                1954
               | 
              
                1512
               | 
              
                  
               | 
            
            
            
              | 
                1955
               | 
              
                1513
               | 
              
                  
               | 
            
            
            
              | 
                1956
               | 
              
                
               | 
              
                -def administrator_delete(request): 
               | 
            
            
            
              | 
                1957
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1958
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1514
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1515
               | 
              
                +def administrator_delete(request, administrator): 
               | 
            
            
            
              | 
                1959
               | 
              
                1516
               | 
              
                     target_admin_id = request.POST.get('target_admin_id', '')
               | 
            
            
            
              | 
                1960
               | 
              
                1517
               | 
              
                  
               | 
            
            
            
              | 
                1961
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1962
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1963
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1964
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1965
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1966
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1967
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1968
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1969
               | 
              
                1518
               | 
              
                     if administrator.admin_type != AdministratorInfo.ADMINISTRATOR: 
               | 
            
            
            
              | 
                1970
               | 
              
                1519
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_PERMISSION_DENIED) 
               | 
            
            
            
              | 
                1971
               | 
              
                1520
               | 
              
                  
               | 
            
            
            
            
            
              | 
                
               | 
              
                
               | 
              
                @@ -1974,21 +1523,12 @@ def administrator_delete(request): 
               | 
            
            
            
              | 
                1974
               | 
              
                1523
               | 
              
                     return response(200, 'Delete Admin Success', u'删除后台管理员成功') 
               | 
            
            
            
              | 
                1975
               | 
              
                1524
               | 
              
                  
               | 
            
            
            
              | 
                1976
               | 
              
                1525
               | 
              
                  
               | 
            
            
            
              | 
                1977
               | 
              
                
               | 
              
                -def administrator_login_list(request): 
               | 
            
            
            
              | 
                1978
               | 
              
                
               | 
              
                -    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            
            
            
              | 
                1979
               | 
              
                
               | 
              
                -    admin_id = request.POST.get('admin_id', '')
               | 
            
            
            
              | 
                
               | 
              
                1526
               | 
              
                +@check_admin 
               | 
            
            
            
              | 
                
               | 
              
                1527
               | 
              
                +def administrator_login_list(request, administrator): 
               | 
            
            
            
              | 
                1980
               | 
              
                1528
               | 
              
                     page = request.POST.get('page', 1)
               | 
            
            
            
              | 
                1981
               | 
              
                1529
               | 
              
                     num = request.POST.get('num', 20)
               | 
            
            
            
              | 
                1982
               | 
              
                1530
               | 
              
                     target_admin_id = request.POST.get('target_admin_id', '')
               | 
            
            
            
              | 
                1983
               | 
              
                1531
               | 
              
                  
               | 
            
            
            
              | 
                1984
               | 
              
                
               | 
              
                -    if brand_id != settings.KODO_DEFAULT_BRAND_ID: 
               | 
            
            
            
              | 
                1985
               | 
              
                
               | 
              
                -        return response(ProductBrandStatusCode.BRAND_NOT_MATCH) 
               | 
            
            
            
              | 
                1986
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1987
               | 
              
                
               | 
              
                -    try: 
               | 
            
            
            
              | 
                1988
               | 
              
                
               | 
              
                -        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) 
               | 
            
            
            
              | 
                1989
               | 
              
                
               | 
              
                -    except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                1990
               | 
              
                
               | 
              
                -        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                1991
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                1992
               | 
              
                1532
               | 
              
                     if administrator.admin_type != AdministratorInfo.ADMINISTRATOR: 
               | 
            
            
            
              | 
                1993
               | 
              
                1533
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_PERMISSION_DENIED) 
               | 
            
            
            
              | 
                1994
               | 
              
                1534
               | 
              
                  
               |